﻿// JavaScript Document
function iShow(divShow, divHide, iType,msg){
    // Định nghĩa từng loại show ở đây
    // 1. FadeIn 2.Show 3...
    switch(iType){
        case 1:{
            
			$('#' + divHide).slideUp("fast");
			//$('#' + divShow).html(msg);
            $('#' + divShow).slideDown("fast");
			
            break;
        }
        case 2:{
            
			$('#' + divHide).hide('fast');
			//$('#' + divShow).html(msg);
            $('#' + divShow).show('fast');
            break;
        }
    }
}
function isVaildLogin(username,pass){
	if(username=='' || pass==''){
		alert('Username, pass không hợp lệ');
		return false;
	}
	return true;
}
function Login(username,pass,divShow,divHide){
    
    if(isVaildLogin(username,pass)){
        //strData = "cmd=Login&username=" + username + "&pass=" + pass; 
        //alert(strData);
        $.ajax({
            url: 'ajaxActions.aspx',
            type: 'POST',
            data: {
                cmd: "Login",
                username: username,
                pass: pass
            }, //strData,
            timeout: 4000,
            error: function (msg) {
                Logout('Login', 'Logined');
            },
            success: function (msg) {
                if (!isNaN(msg)) {
                    var number = parseInt(msg);
                    switch (number) {
                        case 0:
                        {
                            alert('username, password không hợp lệ');
                            Logout('Login', 'Logined');
                            break;
                        }
                    }
                }
                // Server tra ve username
                else {
                    iShow(divShow, divHide, 2, msg);
                    $('#lbl_username').text(msg);
                }
            }
        }); 
    }
}
function Logout(divShow,divHide){
        strData = "cmd=Logout"; 
        //alert(strData);
        $.ajax({
			url: 'ajaxActions.aspx',
			type: 'GET',
			data: strData,
			timeout: 4000,
			error: function(msg){
				  alert('Error Login');
			},
			success: function(msg){
				iShow(divShow,divHide,2,msg);
				$('#lbl_username').text('');
			}
          }); 
}

function checkLogin(){
        strData = "cmd=CheckLogin"; 
        //alert(strData);
        $.ajax({
            url: 'ajaxActions.aspx',
            type: 'GET',
            data: strData,
            timeout: 4000,
            error: function (msg) {
                //alert('Error CheckLogined');
                checkLogin();
            },
            success: function (msg) {
                if (!isNaN(msg)) {
                    var number = parseInt(msg);
                    switch (number) {
                        case 0: 
                            {
                                Logout('Login', 'Logined');
                                break;
                            }
                    }
                }
                // Server tra ve username
                else {
                    iShow('Logined', 'Login', 1, msg); // msg bo k0
                    $('#lbl_username').text(msg);
                }
            } // end success
        });   // end ajax
}
$(document).ready(function() {
	checkLogin();			   
	// Login 
	$('#btLogin').click(function(){
		var username = $('#username').val();
		var pass = MD5($('#password').val());
		Login(username,pass,'Logined','Login');
		
	});
	// Logout
	$('#btLogout').click(function(){
		Logout('Login','Logined');
	});
});